package com.aloda.vo.scoringResult;

import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.aloda.entity.ScoringResult;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Data
public class ScoringResultPageVO {

    /**
     * id
     */
    private Long id;

    /**
     * 结果名称，如物流师
     */
    private String resultName;

    /**
     * 结果描述
     */
    private String resultDesc;

    /**
     * 结果属性集合 JSON，如 [I,S,T,J]
     */
    private List<String> resultProp;

    /**
     * 结果得分范围，如 80，表示 80及以上的分数命中此结果
     */
    private Integer resultScoreRange;

    /**
     * 应用 id
     */
    private Long appId;

    /**
     * 创建用户账号
     */
    private String createUser;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    public static ScoringResultPageVO of(ScoringResult scoringResult) {
        ScoringResultPageVO scoringResultPageVO = BeanUtil.toBeanIgnoreError(scoringResult, ScoringResultPageVO.class);
        if (StrUtil.isNotBlank(scoringResult.getResultProp())) {
            scoringResultPageVO.setResultProp(JSONUtil.toList(scoringResult.getResultProp(), String.class));
        }
        return scoringResultPageVO;
    }
}
